\subsection{Sommaire}
Dans le cadre du projet, le robot Roomba doit explorer un environnement inconnu, en extraire les informations relatives à son environnement et revenir à son point initial. Pour ce faire le robot utilise les systèmes illustrés à la figure~\ref{fig:diagphys}.

\begin{figure}[ht]
 \begin{center}
  \begin{tabular}{c}
    \includegraphics[width=3in]{diag_physique.png} 
  \end{tabular}
 \end{center}
 \caption{Diagramme physique.}
 \label{fig:diagphys}
\end{figure}

La lecture de son environnement fait appel à une Kinect, laquelle fournit une représentation 3D de l'environnement. L'exécution des commandes se fait par les moteurs du robot et la précision du déplacement repose sur un capteur dont il est impossible d'obtenir la lecture par des mesures standards. La station de base avec laquelle communique le robot repose sur le logiciel MatLab et plus particulièrement, sur Ros4Mat, une boîte à outils permettant la communication entre le robot et MatLab. 

\subsection{Phases}
Tout au long de la tâche, le robot est complètement autonome et les commandes qui lui sont envoyées, à l'exception du démarrage, sont exemptes d'intervention humaine. Les tâches du robot se séparent en 2 phases décrites de façon succincte ci-dessous.
\paragraph{Phase d'exploration}Le projet consiste à faire déplacer de façon autonome un robot Roomba muni d'une Kinect et d'un gyroscope dans un lieu inconnu (le pavillon Pouliot). Étant donné qu'il ignore la carte de l'environnement à sa situation initiale, le robot doit se déplacer par petits incréments dans le pavillon. À chaque incrément, par l'emploi de divers algorithmes, le robot se crée progressivement une carte de l'environnement par l'usage de la Kinect et garde l'historique de ses déplacements à l'aide des commandes de déplacements reçues, de même que les informations du gyroscope intégrées au moyen d'algorithme qui seront décrites plus loin. De plus, le robot garde en mémoire chaque emplacement où il s'est arrêté pour se relocaliser entre les incréments avec ses coordonnées et l'emplacement de ce point dans le repère monde de sa carte. 

\paragraph{Phase de retour} Une fois la phase d'exploration complétée (d'une durée de 30 minutes), le système reçoit un signal de la station de base lui signalant de revenir à son point de départ. Ce retour s'opère à l'aveugle, c'est-à-dire, le robot n'utilise la Kinect que pour corriger ses estimations entre les déplacements, mais ne se base sur aucun autre système lors des déplacements. Le robot procède en parcourant chacun des points précédemment parcourus dans le sens inverse, jusqu'à son point d'origine. 


\subsection{Buts et Objectifs}
\label{sec:buts}
Dans un premier temps, ce projet vise à expérimenter différentes techniques permettant l'exploration d'un environnement inconnu du robot. Dans un deuxième temps, les concepts de robotique mobile seront employés afin de faire naviguer le robot dans une carte de l'environnement autogénérée vers un point d'origine. Les objectifs sont donc l'élaboration de mécanisme permettant l'exploration ainsi que la navigation quasi aveugle dans un environnement auto-exploré.
%
%Notre projet a beaucoup évolué depuis la remise initiale de notre proposition de projet. En effet, notre première ébauche consistait principalement en un labyrinthe tracé au sol, à l’aide de ruban adhésif de couleur. Le robot devait ensuite le modéliser à l’aide de la Kinect puis le parcourir. Suite au commentaire reçu de M.Giguère, il nous a été suggéré d’ajouter une fonctionnalité de retour à l’aveugle (par odométrie). Depuis, suite à de nouvelles discussions, nous avons fait évoluer le projet vers un labyrinthe grandeur nature, soit le pavillon Pouliot. 
%
%Le fonctionnement général de notre projet est donc relativement simple et peut se sous-diviser en deux grandes phases. La première est celle dite « exploration » tandis que la seconde est la phase de « retour ». 
%
%La phase d’exploration consiste à laisser le robot libre et de lui allouer un temps limite d’exploration. Durant cette période de temps, il est libre d’évoluer dans le Pavillon Adrien-Pouliot de façon libre et autonome. Il génèrera au fur et à mesure de son exploration une carte des lieux visités. Aucune commande ne sera envoyée au robot et ce dernier devra faire ces propres choix pour se déplacer. 
%
%Une fois que le temps alloué au robot pour faire son exploration est terminé, le robot doit donc rebrousser chemin et retourner à sa position initiale à l’aveugle, sans utiliser la Kinect en continu pour s’orienter. Le robot ne se servira que de l’odométrie pour effectuer le chemin de retour. 

